function closeForm(item){
	/*$("#"+item).attr("checked",false);*/
}
$(function() {
	var $tabList = $("#tab_list"), $pagebar = $("#pagebar ul"), $pageInfo = $("#page_info"), pageNo = 1, pageSize = 10, count = 0;// 初始值
	/** ---------------封装分页方法,count:总条目数,pageNo:当前页--------------- */
	function pageit(count) {
		$pagebar.empty();
		// 首页和上一页
		if (pageNo == 1) {
			$pagebar.append("<li id='start_page' class='disabled'><a href='javascript:void(0);'>首页</a></li>");
			$pagebar.append("<li id='prev_page'  class='disabled'><a href='javascript:void(0);'>上一页</a></li>");
		} else {
			$pagebar.append("<li id='start_page' pn=1><a href='javascript:void(0);'>首页</a></li>");
			$pagebar.append("<li id='prev_page' pn=" + (pageNo - 1)+ "><a href='javascript:void(0);'>上一页</a></li>");
		}
		var tmp = parseInt(count / 10);
		var page_size = count % 10 == 0 ? (tmp) : (tmp + 1);// 总页数
		// 中间数字页
		if (page_size <= 5) {
			// 如果小于5页,则全部显示
			for ( var i = 0; i < page_size; i++) {
				if (i == pageNo - 1) {
					$pagebar.append("<li pn=" + (i + 1)+ " class='active'><a href='javascript:void(0);'>"+ (i + 1) + "</a></li>");
				} else {
					$pagebar.append("<li pn=" + (i + 1)+ "><a href='javascript:void(0);'>" + (i + 1)+ "</a></li>");
				}
			}
		} else {
			// 如果总页数大于5页,显示当前页和前后各两页以及两个...符号
			if (pageNo < 3) {
				for ( var i = 0; i < 5; i++) {
					if (i == pageNo - 1) {
						$pagebar.append("<li pn="+ (i + 1)+ " class='active'><a href='javascript:void(0);'>"+ (i + 1) + "</a></li>");
					} else {
						$pagebar.append("<li pn=" + (i + 1)+ "><a href='javascript:void(0);'>" + (i + 1)+ "</a></li>");
					}
				}
				$pagebar.append("<li class='disabled'><a href='javascript:void(0);'>...</a></li>");
			} else if (pageNo > page_size - 2) {
				$pagebar.append("<li class='disabled'><a href='javascript:void(0);'>...</a></li>");
				for ( var i = page_size - 5; i < page_size; i++) {
					if (i == pageNo - 1) {
						$pagebar.append("<li pn="+ (i + 1)+ " class='active'><a href='javascript:void(0);'>"+ (i + 1) + "</a></li>");
					} else {
						$pagebar.append("<li pn=" + (i + 1)+ "><a href='javascript:void(0);'>" + (i + 1)+ "</a></li>");
					}
				}
			} else {
				for ( var i = pageNo - 3; i < pageNo + 2; i++) {
					if (i == pageNo - 1) {
						$pagebar.append("<li pn="+ (pageNo)+ " class='active'><a href='javascript:void(0);'>"+ (i + 1) + "</a></li>");
					} else {
						$pagebar.append("<li pn=" + (i + 1)+ "><a href='javascript:void(0);'>" + (i + 1)+ "</a></li>");
					}
				}
			}
		}
		// 下一页和末页
		if (page_size == 0 || pageNo == page_size) {
			$pagebar.append("<li id='next_page' class='disabled'><a href='javascript:void(0);'>下一页</a></li>");
			$pagebar.append("<li id='end_page' class='disabled'><a href='javascript:void(0);'>末页</a></li>");
		} else {
			$pagebar.append("<li id='next_page' pn=" + (pageNo + 1)+ "><a href='javascript:void(0);'>下一页</a></li>");
			$pagebar.append("<li id='end_page' pn=" + page_size + "><a href='javascript:void(0);'>末页</a></li>");
		}

		// 绑定事件
		$pagebar.find("li").not(".disabled").on("click", function() {
			pageNo = parseInt($(this).attr("pn"));// 更新当前页码
			reloadList();
		});
		// 分页信息条
		$pageInfo.find("span").each(function(i, k) {
			if (i == 0) {
				if (page_size == 0) {
					$(k).html(0);
				} else {
					$(k).html((pageNo - 1) * 10 + 1);
				}
			} else if (i == 1) {
				$(k).html(count > pageNo * 10 ? pageNo * 10 : count);
			} else {
				$(k).html(count);
			}
		});
	}

	/** ------------------加载列表--------------------- */
	var params = {
		"pageNo" : 1,
		"pageSize" : pageSize,
		"type" : null,
	};
	function reloadList() {
		params.pageNo = pageNo;
		params.pageSize = pageSize;
		params.type = null;
		$.get(serverURL + "festival/list",params,function(data) {
			try {
				if (data.code == 0) {
					data = data.data;
					$tabList.find("tbody").empty();
					count = data.pagination.totalCount;
					if (count > 0) {
						var html = "";
						$.each(data.list,function(i, k) {
							html += "<tr>"
										+ "<td id='pkc'><input type='checkbox' id='"+ k.id+ "' class='checkbox'></td>"
										+ "<td>"+ ((pageNo - 1)* 10+ i + 1)+ "</td>"
										+ "<td>"+ k.festivalName+ "</td>"								
										+ "<td>"+ (k.picUrl ? ("<a href='"+ k.picUrl+ "' target='_blank'><img style='height:30px;' src='"+ k.picUrl + "'/></a>"): "无")+ "</td>"
										+ "<td>"+ k.startDate+ "</td>"								
										+ "<td>"+ k.endDate+ "</td>"								
									+ "</tr>";
						});
						$tabList.find("tbody").append(html);
						$tabList.find("tr").dblclick(function(){
							scan($(this).find("#pkc input").attr("id"));
						});
					} else {
						$tabList.find("tbody").append("<tr><td colspan="+ $("thead th").length+ ">无数据</td></tr>");
					}
					pageit(count);// 重绘工具栏
				}else if(data.code!=-1){
					alert("数据加载出错，请稍后重试");
				}
			} catch (e) {
				alert("数据加载出错，请稍后重试" + e);
			}
		});
	}
	reloadList();
	// 全选与取消全选
	$("#pkall").change(function() {
		if ($(this).prop("checked")) {
			$tabList.find("#pkc :checkbox").prop("checked", true);
		} else {
			$tabList.find("#pkc :checkbox").prop("checked", false);
		}
	});
	// 获取选中的行
	function getSelectedCols() {
		return $tabList.find("#pkc :checkbox").filter(":checked");
	}
	/** ---------------新增----------------- */
	var $formAdd = $("#form_add"),
		$festivalName = $formAdd.find("[name=festivalName]"), 
		$startDate = $formAdd.find("[name=startDate]"), 
		$endDate = $formAdd.find("[name=endDate]"), 
		$logo = $("#form_add2 input:file"), 
		$logoScan = $("#logo_scan");
	function scanLogo(url) {
		$logoScan.parent().parent().parent().show();
		$logoScan.attr("src", url).parent("a").attr("href", url);
	}
	function hideLogo() {
		$logoScan.attr("src", "").parent("a").attr("href", "");
		$logoScan.parent().parent().parent().hide();
	}
	// 上传文件
	var imgReg = /^.+\.(jpg|png|bmp|gif)$/;
	$logo.change(function() {
		if (!imgReg.test($logo.val())) {
			warnInput($logo);
			return false;
		}
		$("#form_add2").ajaxSubmit({
			dataType : 'json',
			resetForm : true,
			success : function(data) {
				if (data.code == 0) {
					scanLogo(data.data);
				}else if(data.code!=-1){
					alert("图片上传失败，请重试");
					$("#form_add2").get(0).reset();
				}
			}
		});
	});
	// 表单验证
	function checkAddForm() {
		if (!$festivalName.val()) {
			warnInput($festivalName);
			return false;
		}
		if (!$startDate.val()) {
			warnInput($startDate);
			return false;
		}
		if (!$endDate.val()) {
			warnInput($endDate);
			return false;
		}
		if (!$logoScan.attr("src")) {
			warnInput($logo);
			return false;
		}
		return true;
	}
	$("#btn_confirm_add").click(function() {
		if (checkAddForm()) {	
			$.post(serverURL + "festival/add", {"festivalName" : $festivalName.val(),'startDate' : $("#startDate").val(),'endDate' : $("#endDate").val(),"picUrl" : $logoScan.attr("src")}, function(data) {
				if (data.code == 0) {
					alert("添加成功");
					hideLogo();
					$("#modal_add").modal("hide");
					$formAdd.get(0).reset();
					reloadList();
				}
			});
		}
	});
	/** ---------------删除----------------- */
	$("#btn_del").click(function() {
		// 获取选中的行
		var $curCol = $tabList.find("#pkc :checkbox").filter(":checked");
		if ($curCol.length == 0) {
			alert("请请至少选择一条记录删除");
			return;
		}
        if (!confirm("确认要删除么？")) {
            return false;
        }
		var id = "";
		$.each($curCol,function(i, k) {
            	id +=k.id+",";
		});
		id = id.substring(0, id.lastIndexOf(","));
		$.post(serverURL + "festival/delete", {"id" : id}, function(data) {
			if (data.code == 0) {
				alert("节日图片删除成功 !");
				reloadList();
			}else if(data.code!=-1){
				alert("节日图片删除失败");
			}
		});

	});

	/** ------------------详情--------------------- */
	function scan(id){
		// 从后台获取该条记录所有信息
		$.get(serverURL + "festival/get", {"id" : id}, function(data) {
			if (data.code == 0) {
				data = data.data;
				$("#festival_name").val(data.festivalName);
				$("#start_date").val(data.startDate);
				$("#end_date").val(data.endDate);
				$("#festival_scan").attr("src",data.picUrl);
				$("#modal_scan").modal("show");
			}else if(data.code!=-1){
				alert("节日图片信息加载失败");
			}
		});
	};

	/** -------------修改节日图片信息----------------- */
	var $formEdit = $("#form_edit"),
	$editId = $formEdit.find("[name=id]"),
	$festivalName_edit = $formEdit.find("[name=festivalName_edit]");
	$startDate_edit = $formEdit.find("[name=startDate_edit]");
	$endDate_edit = $formEdit.find("[name=endDate_edit]");
	
	$logo2 = $("#form_edit2 input:file"),
	$logoScan2 = $("#logo_scan2");
	function scanLogo2(url) {
		if (url) {
			$logoScan2.parent().parent().parent().show();
			$logoScan2.attr("src", url).parent("a").attr("href", url);
		}
	}
	function hideLogo2() {
		$logoScan2.attr("src", "").parent("a").attr("href", "");
		$logoScan2.parent().parent().parent().hide();
	}
	// 上传文件
	$logo2.change(function() {
		if (!imgReg.test($logo2.val())) {
			warnInput($logo2);
			return false;
		}
		$("#form_edit2").ajaxSubmit({
			dataType : 'json',
			resetForm : true,
			success : function(data) {
				if (data.code == 0) {
					scanLogo2(data.data);
				}else if(data.code!=-1){
					$("#form_edit2").get(0).reset();
					alert("图片上传失败，请重试");
				}
			}
		});
	});
	function checkEditForm() {
		if (!$festivalName_edit.val()) {
			warnInput($festivalName_edit);
			return false;
		}
		if (!$startDate_edit.val()) {
			warnInput($startDate_edit);
			return false;
		}
		if (!$endDate_edit.val()) {
			warnInput($endDate_edit);
			return false;
		}
		if (!$logoScan2.attr("src")) {
			warnInput($logo2);
			return false;
		}
		return true;
	}

	$("#btn_edit").click(function() {
		// 获取选中的行
		var $curCol = $tabList.find("#pkc :checkbox").filter(":checked");
		if ($curCol.length != 1) {
			alert("请选择一条修改记录");
			return;
		}
		var id = $curCol[0].id;
		// 给隐藏域id赋值
		$("#edit_id").val(id);
		$.get(serverURL + "festival/get", {"id" : id}, function(data) {
			if (data.code == 0) {
				data = data.data;
				$("#startDate_edit").focus(function(){
					WdatePicker({
//						skin:'whyGreen',
//						startDate:'%y-%M-%d',
						dateFmt:'yyyy-MM-dd',
						maxDate:'#F{$dp.$D(\'endDate_edit\',{d:-1});}',
						onpicked:function(){
							$('#endDate_edit').focus();
						}
					});	
				});
				$("#endDate_edit").focus(function(){
					WdatePicker({
						dateFmt:'yyyy-MM-dd',
						minDate:'#F{$dp.$D(\'startDate_edit\',{d:1});}',
						onpicked:function(){							
						}
					});	
				});	
				$festivalName_edit.val(data.festivalName);
				$("#startDate_edit").val(data.startDate);
				$("#endDate_edit").val(data.endDate);
				scanLogo2(data.picUrl);
				$("#modal_edit").modal("show");
			} else {
				alert("节日图片信息加载失败");
			}
		});
	});

	$("#btn_confirm_edit").click(function() {
		// 表单验证
		if (checkEditForm()) {
			$.post(serverURL + "festival/modify", {"id" : $editId.val(),"picUrl" : $logoScan2.attr("src"),"festivalName" : $festivalName_edit.val(),'startDate' : $("#startDate_edit").val(),'endDate' : $("#endDate_edit").val()}, function(data) {
				if (data.code == 0) {
					alert("修改成功");
					$('#modal_edit').modal('hide');
					$formEdit.get(0).reset();
					reloadList();
				}else if(data.code!=-1){
					alert("修改失败,请稍后重试");
				}
			});
		}
	});
});
$(document).ready(function(){ 
	var date = new Date();
	var year = date.getFullYear();
	var month = date.getMonth()+1;
	var day = date.getDate()+1;
	$("#startDate").val(date.format("yyyy-MM-dd"));
	$("#endDate").val(year+"-"+month+"-"+day);

	$("#startDate").focus(function(){
		WdatePicker({
//			skin:'whyGreen',
			startDate:'%y-%M-%d',
			dateFmt:'yyyy-MM-dd',
			maxDate:'#F{$dp.$D(\'endDate\',{d:-1});}',
			onpicked:function(){
				$('#endDate').focus();
			}
		});	
	});
	$("#endDate").focus(function(){
		WdatePicker({
//			skin:'whyGreen',
			dateFmt:'yyyy-MM-dd',
			minDate:'#F{$dp.$D(\'startDate\',{d:1});}',
			onpicked:function(){				
			}
		});	
	});
}); 